package com.wang.lottery.domain.support.ids.policy;

import cn.hutool.core.util.RandomUtil;
import com.wang.lottery.domain.support.ids.IIdGenerator;
import org.springframework.stereotype.Component;

/**
 * @author wjh
 * @create 2023-11-05 17:35
 * 工具类生成随机数字
 */
@Component("randomNumeric")
public class RandomNumeric implements IIdGenerator {
    /**
     * 获取ID，目前有两种实现方式
     * 1. 雪花算法，用于生成单号
     * 2. 日期算法，用于生成活动编号类，特性是生成数字串较短，但指定时间内不能生成太多
     * 3. 随机算法，用于生成策略ID
     *
     * @return ID
     */
    @Override
    public long nextId() {
        return Long.parseLong(RandomUtil.randomNumbers(11));
    }
}
